package tk.mybatis.simple.mapper;

import org.apache.ibatis.annotations.ResultMap;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.session.RowBounds;
import tk.mybatis.simple.model.SysRole;

import java.util.List;

/**
 * @author: tianhao.luo@hand-china.com 2021/1/28  23:01
 */
public interface SysRoleMapper {

    /**
     * 通过用户id查角色
     * @param userId 用户id
     * @return 角色
     */
    List<SysRole> queryByUserId(Long userId);

    /**
     * 通过主键查角色
     * @param id 主键
     * @return 角色
     */
    SysRole queryById(Long id);

    /**
     * 通过用户id查询角色
     * @param userId 用户id
     * @return 角色信息
     */
    List<SysRole> selectRoleByUserId(Long userId);

    /**
     * 通过主键更新数据
     * @param sysRole 角色数据
     * @return 影响的行数
     */
    Integer update(SysRole sysRole);


//    @ResultMap("tk.mybatis.simple.mapper.SysRoleMapper.BaseResultMap")
//    @Select("select * from sys_role")
//    List<SysRole> selectAll(RowBounds rowBounds);

    /**
     *
     * @param rowBounds
     * @return
     */
    List<SysRole> selectAll(RowBounds rowBounds);
}
